ãœãããŠã§ã¢éçºã«ãããæè¡çè² åµã®çè§£ãæž¬å®ã管çã«é¢ããå æ¬çãªã¬ã€ããäž»èŠãªã¡ããªã¯ã¹ãšã°ããŒãã«ããŒã åãæŠç¥ã«çŠç¹ãåœãŠãŠããŸãã
ãœãããŠã§ã¢ã¡ããªã¯ã¹ïŒæè¡çè² åµã®æž¬å®ãšç®¡ç
ããŒã¹ã®éããœãããŠã§ã¢éçºã®äžçã§ã¯ãè¿ éãªæäŸãšãããã¬ãã·ã£ãŒãããè¿éã劥åãçãŸããããšããããŸããããã¯ãæè¡çè² åµãšããŠç¥ããããã®ã«ã€ãªããå¯èœæ§ããããŸããæè¡çè² åµãšã¯ãããæéããããåªããã¢ãããŒãã§ã¯ãªããç®å ã®ç°¡åãªè§£æ±ºçãéžãã ããšã«ãã£ãŠçãããææ»ãã®æé»çãªã³ã¹ãã®ããšã§ããéèè² åµãšåæ§ã«ãæè¡çè² åµã«ã婿¯ãçºçããåŸã§ä¿®æ£ããã®ãããå°é£ã§é«äŸ¡ã«ãªããŸããæè¡çè² åµã®å¹æçãªæž¬å®ãšç®¡çã¯ããããããœãããŠã§ã¢ãããžã§ã¯ãã®é·æçãªå¥å šæ§ãä¿å®æ§ããããŠæåãä¿èšŒããããã«äžå¯æ¬ ã§ãããã®èšäºã§ã¯ãæè¡çè² åµã®æŠå¿µãé¢é£ãããœãããŠã§ã¢ã¡ããªã¯ã¹ã«ããæž¬å®ã®éèŠæ§ããããŠç¹ã«ã°ããŒãã«ãªéçºç°å¢ã«ãããŠå¹æçã«ç®¡çããããã®å®è·µçãªæŠç¥ã«ã€ããŠæ¢ããŸãã
æè¡çè² åµãšã¯äœãïŒ
ãŠã©ãŒãã»ã«ãã³ã¬ã ã«ãã£ãŠé ãããçšèªã§ããæè¡çè² åµã¯ãéçºè ãããå ç¢ã§é·æçãªè§£æ±ºçããããããã·ã³ãã«ã§è¿ éãªè§£æ±ºçãéžæããéã«è¡ããã¬ãŒããªãã衚ããŸããããã¯å¿ ãããæªãããšã§ã¯ãããŸãããæã«ã¯ãæè¡çè² åµãè² ãããšã¯æŠç¥çãªæ±ºå®ã§ãããããŒã ãè¿ éã«è£œåããªãªãŒã¹ãããŠãŒã¶ãŒãã£ãŒãããã¯ãåéããã€ãã¬ãŒã·ã§ã³ãè¡ãããšãå¯èœã«ããŸãããããã管çãããŠããªãæè¡çè² åµã¯éªã ããŸåŒã«èšãäžãããéçºã³ã¹ãã®å¢å ãä¿ææ§ã®äœäžãæ¬ é¥ãªã¹ã¯ã®å¢å€§ã«ã€ãªããå¯èœæ§ããããŸãã
æè¡çè² åµã«ã¯ããŸããŸãªçš®é¡ããããŸãã
- èšç»ç/æå³çãªè² åµïŒç· ãåããåžå Žæ©äŒã«å¯Ÿå¿ããããã«ãçæ³çãšã¯èšããªã解決çãæèçã«äœ¿çšããæ±ºå®ã
- å¶çºç/æå³ããªãè² åµïŒçè§£äžè¶³ãçµéšäžè¶³ããçããã³ãŒãå質ãèšèšã®äœäžãæããã®ã
- ãããè æïŒå€åããæè¡ãã¡ã³ããã³ã¹äžè¶³ããŸãã¯é²åããèŠä»¶ã«ãããæéãšãšãã«å£åããã³ãŒãã
ãªãæè¡çè² åµã枬å®ããã®ãïŒ
æè¡çè² åµã®æž¬å®ã¯ãããã€ãã®çç±ã§äžå¯æ¬ ã§ãã
- å¯èŠæ§ïŒã³ãŒãããŒã¹ã®çŸç¶ãšãååšããæè¡çè² åµã®éãæç¢ºã«çè§£ã§ããŸãã
- åªå é äœä»ãïŒã³ãŒãã®ã©ã®é åã«æ³šæãšä¿®æ£ãå¿ èŠããåªå é äœä»ãããã®ã«åœ¹ç«ã¡ãŸãã
- ãªã¹ã¯ç®¡çïŒæ¬ é¥çã®å¢å ãã»ãã¥ãªãã£è匱æ§ãªã©ãæè¡çè² åµã«é¢é£ããæœåšçãªãªã¹ã¯ãç¹å®ããŸãã
- æææ±ºå®ïŒãªãã¡ã¯ã¿ãªã³ã°ãæžãæãããŸãã¯çŸåšã®è² åµã¬ãã«ãåãå ¥ãããã©ããã®æ±ºå®ã«æ å ±ãæäŸããŸãã
- ã³ãã¥ãã±ãŒã·ã§ã³ïŒéçºè ããããžã§ã¯ããããŒãžã£ãŒãã¹ããŒã¯ãã«ããŒéã§ããããžã§ã¯ãã®æè¡çãªç¶æ ã«é¢ããã³ãã¥ãã±ãŒã·ã§ã³ãä¿é²ããŸãã
- é²æè¿œè·¡ïŒããŒã ãæéãšãšãã«æè¡çè² åµãåæžãã鲿ã远跡ã§ããŸãã
æè¡çè² åµã枬å®ããããã®äž»èŠãªãœãããŠã§ã¢ã¡ããªã¯ã¹
æè¡çè² åµãå®éåãã远跡ããããã«äœ¿çšã§ãããœãããŠã§ã¢ã¡ããªã¯ã¹ãããã€ããããŸãããããã®ã¡ããªã¯ã¹ã¯ãã³ãŒãã®å質ãè€éæ§ãä¿å®æ§ã®ããŸããŸãªåŽé¢ã«é¢ããæŽå¯ãæäŸããŸãã
1. ã³ãŒãã«ãã¬ããž
説æïŒèªåãã¹ãã§ã«ããŒãããŠããã³ãŒãã®å²åãæž¬å®ããŸããé«ãã³ãŒãã«ãã¬ããžã¯ãã³ãŒãããŒã¹ã®å€§éšåããã¹ããããŠããããšã瀺ããæªæ€åºã®ãã°ã®ãªã¹ã¯ãäœæžããŸãã
è§£éïŒäœãã³ãŒãã«ãã¬ããžã¯ããã¹ããäžååã§ãé ããæ¬ é¥ãå«ãå¯èœæ§ã®ããã³ãŒãé åã瀺ããŠããå¯èœæ§ããããŸããå°ãªããšã80%ã®ã³ãŒãã«ãã¬ããžãç®æããŸãããã¢ããªã±ãŒã·ã§ã³ã®éèŠãªé åã§ã¯ããé«ãã«ãã¬ããžã远æ±ããŠãã ããã
äŸïŒéèååŒãåŠçããã¢ãžã¥ãŒã«ã¯ãæ£ç¢ºæ§ãä¿èšŒãããšã©ãŒãé²ãããã«éåžžã«é«ãã³ãŒãã«ãã¬ããžãæã€ã¹ãã§ãã
2. ãµã€ã¯ãããã£ãã¯è€é床
説æïŒã³ãŒããééããç·åœ¢ç¬ç«ãªãã¹ã®æ°ãæ°ããããšã§ãã³ãŒãã¢ãžã¥ãŒã«ã®è€éæ§ã枬å®ããŸãããµã€ã¯ãããã£ãã¯è€é床ãé«ãã»ã©ãã³ãŒããè€éã§ããããšã瀺ããçè§£ããã¹ããä¿å®ãå°é£ã«ãªããŸãã
è§£éïŒãµã€ã¯ãããã£ãã¯è€é床ãé«ãã¢ãžã¥ãŒã«ã¯ããšã©ãŒãçºçãããããããå€ãã®ãã¹ããå¿ èŠã§ããè€éãªã¢ãžã¥ãŒã«ããªãã¡ã¯ã¿ãªã³ã°ããŠããã®è€éãã軜æžããå¯èªæ§ãåäžãããŸããäžè¬çã«åãå ¥ããããŠãããããå€ã¯ã颿°ããã10æªæºã®ãµã€ã¯ãããã£ãã¯è€é床ã§ãã
äŸïŒå€ãã®ãã¹ããããæ¡ä»¶ãšã«ãŒããæã€è€éãªããžãã¹ã«ãŒã«ãšã³ãžã³ã¯ãé«ããµã€ã¯ãããã£ãã¯è€é床ãæã¡ããããã°ãä¿®æ£ãå°é£ã«ãªãå¯èœæ§ãé«ãã§ããããžãã¯ãããå°ããã管çãããã颿°ã«åå²ããããšã§ãç¶æ³ãæ¹åã§ããŸãã
3. ã³ãŒãã®éè€
説æïŒã³ãŒãããŒã¹å ã®éè€ããã³ãŒãã®éãæž¬å®ããŸããã³ãŒãã®éè€ã¯ãä¿å®ã®è² æ ãå¢ããããã°ãæ··å ¥ããããªã¹ã¯ãé«ããŸããéè€ããã³ãŒãã§ãã°ãèŠã€ãã£ãå Žåãè€æ°ã®å Žæã§ä¿®æ£ããå¿ èŠãããããšã©ãŒã®å¯èœæ§ãé«ãŸããŸãã
è§£éïŒé«ãã¬ãã«ã®ã³ãŒãéè€ã¯ããªãã¡ã¯ã¿ãªã³ã°ãšã³ãŒãã®åå©çšã®å¿ èŠæ§ã瀺ããŸããåå©çšå¯èœãªã³ã³ããŒãã³ãã颿°ãäœæããããšã§ãéè€ããã³ãŒããç¹å®ããæé€ããŸããPMDãCPDãªã©ã®ããŒã«ã䜿çšããŠãã³ãŒãã®éè€ãæ€åºããŸãã
äŸïŒè€æ°ã®ãã©ãŒã ã§ãŠãŒã¶ãŒå ¥åãæ€èšŒããããã«åãã³ãŒããããã¯ãã³ããŒïŒããŒã¹ããããšãã³ãŒãã®éè€ã«ã€ãªãããŸããåå©çšå¯èœãªæ€èšŒé¢æ°ãŸãã¯ã³ã³ããŒãã³ããäœæããããšã§ããã®éè€ãæé€ã§ããŸãã
4. ã³ãŒãè¡æ° (LOC)
説æïŒãããžã§ã¯ããŸãã¯ã¢ãžã¥ãŒã«ã®ç·ã³ãŒãè¡æ°ã枬å®ããŸããæè¡çè² åµã®çŽæ¥çãªå°ºåºŠã§ã¯ãããŸããããLOCã¯ã³ãŒãããŒã¹ã®ãµã€ãºãšè€éæ§ã«é¢ããæŽå¯ãæäŸã§ããŸãã
è§£éïŒå€§ããªLOCæ°ã¯ãã³ãŒãã®ãªãã¡ã¯ã¿ãªã³ã°ãšã¢ãžã¥ãŒã«åã®å¿ èŠæ§ã瀺ããŠããå¯èœæ§ããããŸããããå°ããã管çããããã¢ãžã¥ãŒã«ã¯ãçè§£ãããããä¿å®ã容æã§ãããŸãããããžã§ã¯ãã®ãµã€ãºãšè€éæ§ã®é«ã¬ãã«ã®ææšãšããŠã䜿çšã§ããŸãã
äŸïŒæ°åè¡ã®ã³ãŒããå«ãåäžã®é¢æ°ã¯ãè€éãããå¯èœæ§ãé«ããããå°ããã管çãããã颿°ã«åå²ããå¿ èŠããããŸãã
5. ä¿å®æ§ææ°
説æïŒãµã€ã¯ãããã£ãã¯è€é床ãLOCããã«ã¹ãããããªã¥ãŒã ãªã©ã®ä»ã®ããã€ãã®ã¡ããªã¯ã¹ãçµã¿åãããŠãã³ãŒãã®ä¿å®æ§ã®å šäœçãªå°ºåºŠãæäŸããè€åã¡ããªã¯ã¹ã§ããä¿å®æ§ææ°ãé«ãã»ã©ãä¿å®ããããã³ãŒãã§ããããšã瀺ããŸãã
è§£éïŒäœãä¿å®æ§ææ°ã¯ãã³ãŒããçè§£ãä¿®æ£ããã¹ããå°é£ã§ããããšã瀺ããŸãããµã€ã¯ãããã£ãã¯è€é床ãã³ãŒãã®éè€ãæžãããªã©ãäœãã¹ã³ã¢ã«å¯äžããŠããé åã®æ¹åã«çŠç¹ãåœãŠãŸãã
äŸïŒé«ããµã€ã¯ãããã£ãã¯è€é床ãé«ãã³ãŒãéè€ãããã³å€§ããªLOCæ°ãæã€ã³ãŒãã¯ãäœãä¿å®æ§ææ°ãæã€å¯èœæ§ãé«ãã§ãã
6. ãã°/æ¬ é¥ã®æ°
説æïŒã³ãŒãå ã§èŠã€ãã£ããã°ãæ¬ é¥ã®æ°ã远跡ããŸãã倿°ã®ãã°ã¯ãã³ãŒãã®å質ãšèšèšã«é¢ããæ ¹æ¬çãªåé¡ã瀺ããŠããå¯èœæ§ããããŸãã
è§£éïŒé«ããã°æ°ã¯ããã培åºçãªãã¹ããã³ãŒãã¬ãã¥ãŒããŸãã¯ãªãã¡ã¯ã¿ãªã³ã°ã®å¿ èŠæ§ã瀺ããŠããå¯èœæ§ããããŸãããã°ã®æ ¹æ¬åå ãåæããŠãæ ¹æ¬çãªåé¡ãç¹å®ãã察åŠããŸããæéçµéã«äŒŽããã°æ°ã®åŸåã¯ããœãããŠã§ã¢ã®å šäœçãªå質ãè©äŸ¡ããã®ã«åœ¹ç«ã¡ãŸãã
äŸïŒäžè²«ããŠå€æ°ã®ãã°å ±åãçæããã¢ãžã¥ãŒã«ã¯ãå®å šãªæžãæããŸãã¯åèšèšãå¿ èŠã«ãªãå ŽåããããŸãã
7. ã³ãŒãã®åã
説æïŒé·ãã¡ãœããã倧ããªã¯ã©ã¹ãéè€ããã³ãŒããªã©ãã³ãŒãå ã®æœåšçãªåé¡ã瀺ããã¥ãŒãªã¹ãã£ãã¯ãªææšã§ããçŽæ¥çãªæž¬å®ã§ã¯ãããŸããããã³ãŒãã®åãã¯ãæè¡çè² åµã«å¯äžããŠããå¯èœæ§ã®ããã³ãŒãé åãæã瀺ãããšãã§ããŸãã
è§£éïŒã³ãŒãã®åãã調æ»ããŠå¯ŸåŠããã³ãŒãã®å質ãšä¿å®æ§ãåäžãããŸããåããæé€ããå šäœçãªèšèšãæ¹åããããã«ã³ãŒãããªãã¡ã¯ã¿ãªã³ã°ããŸããäŸãšããŠã¯ä»¥äžã®ãããªãã®ããããŸãã
- é·ãã¡ãœããïŒé·ãããŠè€éãªã¡ãœããã
- 巚倧ãªã¯ã©ã¹ïŒè²¬ä»»ãå€ãããã¯ã©ã¹ã
- éè€ããã³ãŒãïŒè€æ°ã®å Žæã§ç¹°ãè¿ãããã³ãŒãã
- æ©èœã®çŸšæïŒèªèº«ã®ããŒã¿ãããä»ã®ãªããžã§ã¯ãã®ããŒã¿ã«å€ãã¢ã¯ã»ã¹ããã¡ãœããã
- ç¥ã¯ã©ã¹ïŒç¥ããããããããã®ã¯ã©ã¹ã
äŸïŒæ°çŸã®ã¡ãœãããšæ°åã®ãã£ãŒã«ããæã€ã¯ã©ã¹ã¯ãç¥ã¯ã©ã¹ã§ããå¯èœæ§ãé«ããããå°ãããããå°éçãªã¯ã©ã¹ã«åå²ããå¿ èŠããããŸãã
8. éçè§£æéå
説æïŒéçè§£æããŒã«ã«ãã£ãŠæ€åºãããã³ãŒãã£ã³ã°æšæºããã³ãã¹ããã©ã¯ãã£ã¹ã®éåæ°ãã«ãŠã³ãããŸãããããã®éåã¯ãæœåšçãªã³ãŒãå質ã®åé¡ãã»ãã¥ãªãã£è匱æ§ã瀺ããŠããå¯èœæ§ããããŸãã
è§£éïŒéçè§£æéåã«å¯ŸåŠããŠãã³ãŒãã®å質ãã»ãã¥ãªãã£ãä¿å®æ§ãåäžãããŸãããããžã§ã¯ãåºæã®ã³ãŒãã£ã³ã°æšæºãšãã¹ããã©ã¯ãã£ã¹ã匷å¶ããããã«éçè§£æããŒã«ãæ§æããŸããäŸãšããŠã¯ãåœåèŠåã®éåãæªäœ¿çšã®å€æ°ããŸãã¯æœåšçãªãã«ãã€ã³ã¿ãŒäŸå€ãªã©ããããŸãã
äŸïŒéçè§£æããŒã«ã¯ã宣èšãããŠããã䜿çšãããŠããªã倿°ããã©ã°ä»ãããããšããããŸããããã¯ãåé€ãã¹ããããã³ãŒãã®å¯èœæ§ã瀺ããŸãã
æè¡çè² åµã枬å®ããããã®ããŒã«
æè¡çè² åµã®æž¬å®ãèªååããããã®ããŒã«ãããã€ãå©çšå¯èœã§ãããããã®ããŒã«ã¯ãã³ãŒããåæããæœåšçãªåé¡ãç¹å®ããã³ãŒãã®å質ãšä¿å®æ§ã«é¢ããã¬ããŒããçæã§ããŸãã以äžã«ããã€ãã®äººæ°ã®ããéžæè¢ã瀺ããŸãã
- SonarQubeïŒã³ãŒãå質ã®ç¶ç¶çãªæ€æ»ã®ããã®ãªãŒãã³ãœãŒã¹ãã©ãããã©ãŒã ãã³ãŒãã®åãããã°ãè匱æ§ãã³ãŒãã«ãã¬ããžã«é¢ãã詳现ãªã¬ããŒããæäŸããŸããSonarQubeã¯ããŸããŸãªãã«ãã·ã¹ãã ãIDEãšçµ±åã§ããéçºã¯ãŒã¯ãããŒã«ç°¡åã«çµã¿èŸŒãããšãã§ããŸããå¹ åºãããã°ã©ãã³ã°èšèªããµããŒãããŠããŸããäžçäžã®å€ãã®å€§äŒæ¥ãSonarQubeãåºç¯ã«å©çšããŠãããã³ãã¥ããã£ãµããŒããåªããŠããŸãã
- CASTïŒãœãããŠã§ã¢ã¢ããªã±ãŒã·ã§ã³ã®ã¢ãŒããã¯ãã£ãå質ãã»ãã¥ãªãã£ã«é¢ããæŽå¯ãæäŸããåçšãœãããŠã§ã¢ã€ã³ããªãžã§ã³ã¹ãã©ãããã©ãŒã ãCASTã¯é«åºŠãªåææ©èœãæäŸããè€éãªäŸåé¢ä¿ãæœåšçãªãªã¹ã¯ãç¹å®ã§ããŸããå€§èŠæš¡ãªçµç¹ãè€éãªãœãããŠã§ã¢ããŒããã©ãªãªã管çããããã«ãã䜿çšãããŸãã
- PMDïŒJavaãJavaScriptããã®ä»ã®èšèªã§ã³ãŒãã®åãããã°ãã³ãŒãã®éè€ãæ€åºã§ãããªãŒãã³ãœãŒã¹ã®éçè§£æããŒã«ãPMDã¯é«åºŠã«ã«ã¹ã¿ãã€ãºå¯èœã§ããã«ãã·ã¹ãã ãIDEã«çµ±åã§ããŸããå°èŠæš¡ãªãããžã§ã¯ãã«æé©ãªè»œéããŒã«ã§ãã
- ESLintïŒJavaScriptããã³TypeScriptçšã®äººæ°ã®ããéçè§£æããŒã«ãESLintã¯ã³ãŒãã£ã³ã°æšæºã匷å¶ããæœåšçãªãšã©ãŒãæ€åºããã³ãŒãå質ãåäžãããããšãã§ããŸããé«åºŠã«èšå®å¯èœã§ãããŸããŸãªIDEããã«ãã·ã¹ãã ã«çµ±åã§ããŸãã
- CheckstyleïŒJavaã³ãŒãã§ã³ãŒãã£ã³ã°æšæºãšãã¹ããã©ã¯ãã£ã¹ã匷å¶ãããªãŒãã³ãœãŒã¹ã®éì è§£æããŒã«ãCheckstyleã¯ç¹å®ã®ã³ãŒãã£ã³ã°ã«ãŒã«ã匷å¶ããããã«ã«ã¹ã¿ãã€ãºã§ãããã«ãã·ã¹ãã ãIDEã«çµ±åã§ããŸãã
- UnderstandïŒã³ãŒãæ§é ãäŸåé¢ä¿ãè€éæ§ã«é¢ããè©³çŽ°ãªæ å ±ãæäŸããåçšéçè§£æããŒã«ãUnderstandã¯æœåšçãªåé¡ãç¹å®ããã³ãŒãå質ãåäžãããããã«äœ¿çšã§ããŸããç¹ã«è€éã§å€§èŠæš¡ãªã¬ã¬ã·ãŒã·ã¹ãã ãçè§£ããã®ã«åŒ·åã§ãã
æè¡çè² åµã管çããããã®æŠç¥
æè¡çè² åµã广çã«ç®¡çããã«ã¯ããã¹ãŠã®ã¹ããŒã¯ãã«ããŒãé¢äžããç©æ¥µçãªã¢ãããŒããå¿ èŠã§ãã以äžã«ãæè¡çè² åµã管çããããã®äž»èŠãªæŠç¥ã瀺ããŸãã
1. æè¡çè² åµã®ä¿®æ£ãåªå é äœä»ããã
ãã¹ãŠã®æè¡çè² åµãåãããã«äœãããŠããããã§ã¯ãããŸãããäžéšã®æè¡çè² åµé ç®ã¯ãä»ã®ãã®ããããããžã§ã¯ãã«ãšã£ãŠå€§ããªãªã¹ã¯ããããããŸãã以äžã®èŠçŽ ã«åºã¥ããŠæè¡çè² åµã®ä¿®æ£ãåªå é äœä»ãããŸãã
- 圱é¿ïŒæ¬ é¥çã®å¢å ãããã©ãŒãã³ã¹ã®äœäžãã»ãã¥ãªãã£è匱æ§ãªã©ãæè¡çè² åµããããžã§ã¯ãã«äžããæœåšçãªåœ±é¿ã
- å¯èœæ§ïŒæè¡çè² åµãå°æ¥åé¡ãåŒãèµ·ããå¯èœæ§ã
- ã³ã¹ãïŒæè¡çè² åµãä¿®æ£ããããã®ã³ã¹ãã
æã圱é¿ã倧ãããåé¡ãåŒãèµ·ããå¯èœæ§ãé«ãããã€åççãªã³ã¹ãã§ä¿®æ£ã§ããæè¡çè² åµé ç®ã«çŠç¹ãåœãŠãŠä¿®æ£ããŸãã
2. æè¡çè² åµã®ä¿®æ£ãéçºããã»ã¹ã«çµ±åãã
æè¡çè² åµã®ä¿®æ£ã¯ãåŸä»ãã§ã¯ãªããéçºããã»ã¹ã®äžå¯æ¬ ãªéšåã§ããã¹ãã§ããåã¹ããªã³ããŸãã¯ã€ãã¬ãŒã·ã§ã³ã§æè¡çè² åµã«å¯ŸåŠããããã®æéãšãªãœãŒã¹ãå²ãåœãŠãŸããåã¿ã¹ã¯ãŸãã¯ãŠãŒã¶ãŒã¹ããŒãªãŒã®å®äºã®å®çŸ©ã«æè¡çè² åµã®ä¿®æ£ãçµã¿èŸŒã¿ãŸããäŸãã°ãã³ãŒã倿Žã®ãå®äºã®å®çŸ©ãã«ã¯ããµã€ã¯ãããã£ãã¯è€é床ãç¹å®ã®ãããå€ä»¥äžã«åæžããããã®ãªãã¡ã¯ã¿ãªã³ã°ããã³ãŒãã®éè€ã®æé€ãªã©ãå«ãŸããå ŽåããããŸãã
3. ã¢ãžã£ã€ã«ææ³ã䜿çšãã
ã¹ã¯ã©ã ãã«ã³ãã³ãªã©ã®ã¢ãžã£ã€ã«ææ³ã¯ãå埩çãªéçºãç¶ç¶çãªæ¹åãã³ã©ãã¬ãŒã·ã§ã³ãä¿é²ããããšã§ãæè¡çè² åµã®ç®¡çã«åœ¹ç«ã¡ãŸããã¢ãžã£ã€ã«ããŒã ã¯ãã¹ããªã³ãã¬ãã¥ãŒãã¬ããã¹ãã¯ãã£ãã䜿çšããŠãæè¡çè² åµãç¹å®ãã察åŠã§ããŸãããããã¯ããªãŒããŒã¯ããããã¯ãããã¯ãã°ã«æè¡çè² åµã®ä¿®æ£ã¿ã¹ã¯ã远å ããä»ã®æ©èœããŠãŒã¶ãŒã¹ããŒãªãŒãšäžŠè¡ããŠåªå é äœãä»ããããšãã§ããŸããã¢ãžã£ã€ã«ã®çãã€ãã¬ãŒã·ã§ã³ãšç¶ç¶çãªãã£ãŒãããã¯ãžã®çŠç¹ã¯ãèç©ããè² åµã®é »ç¹ãªè©äŸ¡ãšä¿®æ£ãå¯èœã«ããŸãã
4. ã³ãŒãã¬ãã¥ãŒã宿œãã
ã³ãŒãã¬ãã¥ãŒã¯ãæè¡çè² åµãç¹å®ããé²ãããã®å¹æçãªæ¹æ³ã§ããã³ãŒãã¬ãã¥ãŒäžã«ãéçºè ã¯æœåšçãªã³ãŒãå質ã®åé¡ãã³ãŒãã®åããã³ãŒãã£ã³ã°æšæºã®éåãç¹å®ã§ããŸããã³ãŒãã¬ãã¥ãŒã¯ãŸããã³ãŒããååã«ææžåãããçè§£ããããããšãä¿èšŒããã®ã«ã圹ç«ã¡ãŸããã³ãŒãã¬ãã¥ãŒã®ãã§ãã¯ãªã¹ãã«ãæœåšçãªæè¡çè² åµã®åé¡ã«é¢ãããã§ãã¯ãæç€ºçã«å«ãŸããŠããããšã確èªããŠãã ããã
5. ã³ãŒãåæãèªååãã
éçè§£æããŒã«ã䜿çšããŠã³ãŒãåæãèªååããæœåšçãªåé¡ãç¹å®ããã³ãŒãã£ã³ã°æšæºã匷å¶ããŸãããã«ãããã»ã¹ã«éçè§£æããŒã«ãçµ±åããŠããã¹ãŠã®ã³ãŒããã³ãŒãããŒã¹ã«ã³ããããããåã«åæãããããã«ããŸããã³ãŒãã®åè³ªãšæè¡çè² åµã«é¢ããã¬ããŒããçæããããã«ããŒã«ãæ§æããŸããSonarQubeãPMDãESLintãªã©ã®ããŒã«ã¯ãã³ãŒãã®åããæœåšçãªãã°ãã»ãã¥ãªãã£è匱æ§ãèªåçã«ç¹å®ã§ããŸãã
6. 宿çã«ãªãã¡ã¯ã¿ãªã³ã°ãã
ãªãã¡ã¯ã¿ãªã³ã°ã¯ãå€éšã®æ¯ãèãã倿Žããã«ã³ãŒãã®å éšæ§é ãæ¹åããããã»ã¹ã§ãã宿çãªãªãã¡ã¯ã¿ãªã³ã°ã¯ãæè¡çè² åµãåæžããã³ãŒãã®å質ãåäžãããã³ãŒããçè§£ãããããä¿å®ããããããã®ã«åœ¹ç«ã¡ãŸããæè¡çè² åµé ç®ã«å¯ŸåŠããããã«ã宿çãªãªãã¡ã¯ã¿ãªã³ã°ã¹ããªã³ããŸãã¯ã€ãã¬ãŒã·ã§ã³ãã¹ã±ãžã¥ãŒã«ããŸããã³ãŒãã«å°ãããæ®µéçãªå€æŽãå ããå倿ŽåŸã«åŸ¹åºçã«ãã¹ãããŸãã
7. ã³ãŒãã£ã³ã°æšæºãšãã¹ããã©ã¯ãã£ã¹ã確ç«ãã
äžè²«ããã³ãŒãå質ãä¿é²ããæè¡çè² åµãå°å ¥ããå¯èœæ§ãæžããããã«ãã³ãŒãã£ã³ã°æšæºãšãã¹ããã©ã¯ãã£ã¹ã確ç«ããŸããã³ãŒãã£ã³ã°æšæºãšãã¹ããã©ã¯ãã£ã¹ãææžåãããã¹ãŠã®éçºè ãç°¡åã«ã¢ã¯ã»ã¹ã§ããããã«ããŸããéçè§£æããŒã«ã䜿çšããŠãã³ãŒãã£ã³ã°æšæºãšãã¹ããã©ã¯ãã£ã¹ã匷å¶ããŸããäžè¬çãªã³ãŒãã£ã³ã°æšæºã®äŸã«ã¯ãåœåèŠåãã³ãŒãã®ãã©ãŒããããã³ã¡ã³ãã®ã¬ã€ãã©ã€ã³ãªã©ããããŸãã
8. ãã¬ãŒãã³ã°ãšæè²ã«æè³ãã
éçºè ã«ãœãããŠã§ã¢éçºã®ãã¹ããã©ã¯ãã£ã¹ãã³ãŒãå質ãæè¡çè² åµç®¡çã«é¢ãããã¬ãŒãã³ã°ãšæè²ãæäŸããŸããéçºè ãææ°ã®æè¡ããã¯ããã¯ãåžžã«ææ¡ããããã«å¥šå±ããŸããéçºè ãã¹ãã«ãšç¥èãåäžãããã®ã«åœ¹ç«ã€ããŒã«ããªãœãŒã¹ã«æè³ããŸããéçè§£æããŒã«ã®äœ¿çšãã³ãŒãã¬ãã¥ãŒããã»ã¹ããªãã¡ã¯ã¿ãªã³ã°æè¡ã«é¢ãããã¬ãŒãã³ã°ãæäŸããŸãã
9. æè¡çè² åµå°åž³ãç¶æãã
ç¹å®ããããã¹ãŠã®æè¡çè² åµé ç®ã远跡ããããã«ãæè¡çè² åµå°åž³ãäœæããç¶æããŸããå°åž³ã«ã¯ãæè¡çè² åµé ç®ã®èª¬æããã®åœ±é¿ãå¯èœæ§ãä¿®æ£ã³ã¹ããåªå é äœãå«ããå¿ èŠããããŸãã宿çã«æè¡çè² åµå°åž³ã確èªããå¿ èŠã«å¿ããŠæŽæ°ããŸãããã®å°åž³ã«ãããããè¯ã远跡ãšç®¡çãå¯èœã«ãªããæè¡çè² åµãå¿ãããããç¡èŠããããããã®ãé²ããŸãããŸããã¹ããŒã¯ãã«ããŒãšã®ã³ãã¥ãã±ãŒã·ã§ã³ãä¿é²ããŸãã
10. 鲿ãç£èŠã»è¿œè·¡ãã
æéãšãšãã«æè¡çè² åµãåæžãã鲿ãç£èŠãã远跡ããŸãããœãããŠã§ã¢ã¡ããªã¯ã¹ã䜿çšããŠãæè¡çè² åµä¿®æ£åªåã®åœ±é¿ã枬å®ããŸããã³ãŒãã®å質ãè€éæ§ãä¿å®æ§ã«é¢ããã¬ããŒããçæããŸããã¬ããŒããã¹ããŒã¯ãã«ããŒãšå ±æããæææ±ºå®ã«åœ¹ç«ãŠãŸããäŸãã°ãã³ãŒãã®éè€ããµã€ã¯ãããã£ãã¯è€é床ããŸãã¯éçè§£æéåã®æ°ã®æžå°ãæéãšãšãã«è¿œè·¡ããŸãã
ã°ããŒãã«éçºããŒã ã«ãããæè¡çè² åµ
ã°ããŒãã«éçºããŒã ã§æè¡çè² åµã管çããããšã¯ãç¹æã®èª²é¡ãæç€ºããŸãããããã®èª²é¡ã«ã¯ä»¥äžãå«ãŸããŸãã
- ã³ãã¥ãã±ãŒã·ã§ã³ã®éå£ïŒèšèªãæåã®éãã«ãããæè¡çè² åµã«ã€ããŠå¹æçã«ã³ãã¥ãã±ãŒã·ã§ã³ããããšãå°é£ã«ãªãå ŽåããããŸãã
- ã¿ã€ã ãŸãŒã³ã®éãïŒã¿ã€ã ãŸãŒã³ã®éãã«ãããã³ãŒãã¬ãã¥ãŒããªãã¡ã¯ã¿ãªã³ã°äœæ¥ã§ååããããšãå°é£ã«ãªãå ŽåããããŸãã
- 忣ããã³ãŒãæææš©ïŒã³ãŒãã®æææš©ãç°ãªãå Žæã®è€æ°ã®ããŒã ã«åæ£ããŠããå Žåããããæè¡çè² åµã®ä¿®æ£è²¬ä»»ãå²ãåœãŠãããšãå°é£ã«ãªããŸãã
- äžè²«æ§ã®ãªãã³ãŒãã£ã³ã°æšæºïŒããŒã ã«ãã£ãŠã³ãŒãã£ã³ã°æšæºããã¹ããã©ã¯ãã£ã¹ãç°ãªãå Žåããããã³ãŒãå質ã«äžè²«æ§ããªããªããŸãã
ãããã®èª²é¡ã«å¯ŸåŠããããã«ãã°ããŒãã«éçºããŒã ã¯ä»¥äžãè¡ãã¹ãã§ãã
- æç¢ºãªã³ãã¥ãã±ãŒã·ã§ã³ãã£ãã«ã確ç«ããïŒãããªäŒè°ãã€ã³ã¹ã¿ã³ãã¡ãã»ãŒãžã³ã°ãå ±æããã¥ã¡ã³ããªã©ãããŒã ã¡ã³ããŒéã®ã³ãã¥ãã±ãŒã·ã§ã³ãä¿é²ããããŒã«ãšããã»ã¹ã䜿çšããŸãã
- ã³ãŒãã£ã³ã°æšæºãšãã¹ããã©ã¯ãã£ã¹ãæšæºåããïŒãã¹ãŠã®ããŒã ãåŸãã¹ãå ±éã®ã³ãŒãã£ã³ã°æšæºãšãã¹ããã©ã¯ãã£ã¹ã確ç«ããŸãã
- å ±æããŒã«ãšãã©ãããã©ãŒã ã䜿çšããïŒã³ãŒãåæãã³ãŒãã¬ãã¥ãŒã課é¡è¿œè·¡ã®ããã«å ±æããŒã«ãšãã©ãããã©ãŒã ã䜿çšããŸãã
- 宿çãªã¯ãã¹ããŒã ã³ãŒãã¬ãã¥ãŒã宿œããïŒã³ãŒãã®å質ãšäžè²«æ§ã確ä¿ããããã«ã宿çãªã¯ãã¹ããŒã ã³ãŒãã¬ãã¥ãŒã宿œããŸãã
- ã³ã©ãã¬ãŒã·ã§ã³ãšç¥èå ±æã®æåãè²ãïŒããŒã ã¡ã³ããŒãäºãã«ç¥èãšå°éç¥èãå ±æããããšã奚å±ããŸãã
çµè«
æè¡çè² åµã®æž¬å®ãšç®¡çã¯ããœãããŠã§ã¢ãããžã§ã¯ãã®é·æçãªå¥å šæ§ãä¿å®æ§ãæåãä¿èšŒããããã«äžå¯æ¬ ã§ããã³ãŒãã«ãã¬ããžããµã€ã¯ãããã£ãã¯è€é床ãã³ãŒãã®éè€ãä¿å®æ§ææ°ãªã©ã®äž»èŠãªãœãããŠã§ã¢ã¡ããªã¯ã¹ã䜿çšããããšã§ãããŒã ã¯ã³ãŒãããŒã¹ã«ååšããæè¡çè² åµãæç¢ºã«çè§£ã§ããŸããSonarQubeãCASTãPMDãªã©ã®ããŒã«ã¯ã枬å®ããã»ã¹ãèªååããã³ãŒãå質ã«é¢ãã詳现ãªã¬ããŒããæäŸã§ããŸããæè¡çè² åµã管çããããã®æŠç¥ã«ã¯ãä¿®æ£äœæ¥ã®åªå é äœä»ããéçºããã»ã¹ãžã®ä¿®æ£ã®çµ±åãã¢ãžã£ã€ã«ææ³ã®äœ¿çšãã³ãŒãã¬ãã¥ãŒã®å®æœãã³ãŒãåæã®èªååã宿çãªãªãã¡ã¯ã¿ãªã³ã°ãã³ãŒãã£ã³ã°æšæºã®ç¢ºç«ããã¬ãŒãã³ã°ãžã®æè³ãªã©ããããŸããã°ããŒãã«éçºããŒã ã«ãšã£ãŠã¯ãã³ãã¥ãã±ãŒã·ã§ã³ã®éå£ã«å¯ŸåŠããã³ãŒãã£ã³ã°æšæºãæšæºåããã³ã©ãã¬ãŒã·ã§ã³ãä¿é²ããããšããæè¡çè² åµã广çã«ç®¡çããããã«äžå¯æ¬ ã§ããæè¡çè² åµãç©æ¥µçã«æž¬å®ã»ç®¡çããããšã§ãããŒã ã¯éçºã³ã¹ããåæžããä¿ææ§ãåäžããããŠãŒã¶ãŒã®ããŒãºãæºããé«å質ã®ãœãããŠã§ã¢ãæäŸã§ããŸãã